@file:Suppress("unused")

package com.hjh.tool.extension

import androidx.fragment.app.DialogFragment
import androidx.fragment.app.FragmentManager
import kotlin.let

/**
 * @author： hjh
 * @createDate： 2024/12/25 15:30
 * @description：
 * @qq： 3472903821
 * @version: 1.0
 */

/**
 * 如果弹窗已显示就先关闭
 */
fun DialogFragment.showIf(fragmentManager: FragmentManager, tag: String) {
    // 关闭已有的 DialogFragment
    fragmentManager.findFragmentByTag(tag)?.let {
        (it as DialogFragment).dismiss()
    }

    // 显示新的 DialogFragment
    if (!fragmentManager.isStateSaved && !fragmentManager.isDestroyed) {
        show(fragmentManager, tag)
    }
}